/*
 * 系统设置
 * */

import http from '@/utils/http';

/*
 * 账号设置
 * */

// 账号设置 修改用户昵称
// eslint-disable-next-line import/prefer-default-export
export async function accountUpdateNick(params) {
  return http.post('/sys/user/updateNick', params);
}

// 账号设置 发送手机验证码
export async function accountCode(params) {
  return http.post('/guest/sendSMS4BindPhoneJson', params);
}

// 账号设置 修改手机号
export async function accountUpdatePhone(params) {
  return http.post('/user/updatePhone', params);
}

// 账号设置 修改用户密码
export async function accountUpdatePassword(params) {
  return http.post('/sys/user/updatePass', params);
}

/*
 * 机器人设置
 * */

// 机器人设置 重启机器人
export async function robotSetupRestart(params) {
  return http.get('/robot/restart', params);
}

// 机器人设置保存修改
export async function robotSetupSaveEditInfo(params) {
  return http.post('/robot/editBase', params);
}

// 账号管理

export async function loadUsersJson(params) {
  return http.post('/system/account/getUserList', params);
}

// 添加账号

export async function saveUser(params) {
  return http.post('/user/saveUser', params);
}

// 删除账号

export async function deleteUser(params) {
  return http.post('/user/deleteUser', params);
}

// 编辑账号

export async function editUserInfoNew(params) {
  return http.post('/user/editUserInfoNew', params);
}

// 重置用户密码

export async function resetUserPassword(params) {
  return http.post('/user/resetUserPassword', params);
}

// 机器人设置 获取机器人设置信息
export async function robotGetRobotSetting(params) {
  return http.get('/robot/messageById', params);
}

// 机器人设置 初始化设置【客服】 -- 根据应用Id查询初始化设置
export async function getChannelInfoByApplicationId(params) {
  return http.get('/channel/getChannelInfoByApplicationId', params);
}

// 机器人设置 初始化设置【客服】 -- 保存初始化设置
export async function postSaveChannelInfo(data) {
  return http.post('/channel/saveChannelInfo', data);
}

// 机器人设置 初始化设置【客服】 -- 根据应用id查询渠道基础信息
export async function getChannelBaseByApplicationId(params) {
  return http.get('/channel/getChannelBaseByApplicationId', params);
}

// 机器人设置 初始化设置【客服】 -- 客服机器人开关
export async function getRobotClose(params) {
  return http.get('/channel/getRobotClose', params);
}

// 机器人设置 初始化设置【客服】 -- 根据应用id查询会话咨询类型
export async function getSessionConsultType(params) {
  return http.get('/channelConsultType/getSessionConsultType', params);
}

// 机器人设置 初始化设置【客服】 -- 根据应用id查询留言咨询类型
export async function getLeaveConsultType(params) {
  return http.get('/channelConsultType/getLeaveConsultType', params);
}

/*
 * 接入设置
 * */

// 保存接入设置
export async function saveSettings(params) {
  return http.post('/setLink/saveLink', params);
}

// 接入设置 获取网站接入信息
export async function webSettingInfo(params) {
  return http.get('/robot/siteSetting/info', params);
}

// 接入设置 保存网站设置
export async function saveWebSetting(params) {
  return http.post('/application/webCommon/edit', params);
}

// 接入设置上传图片接口
export async function accountUpload(params) {
  return http.post('/res/upload', params);
}

// 授权公众号查询接口
export async function accountWeChatList(params) {
  return http.post('/robot/weChatList', params);
}

// 接入设置 保存app设置
export async function saveAppSetting(params) {
  return http.post('/system/access/set/saveAppSetting', params);
}

// 接入设置 获取app接入信息
export async function appSettingInfo(params) {
  return http.get('/system/access/set/appSettingInfo', params);
}

/**
 *
 * 接入设置-标签分类
 * */

// 标签分类-列表
export async function getSiteTagList(params) {
  return http.get('/application/webTag/list', params);
}

// 标签分类-添加
export async function postSiteTagAdd(params) {
  return http.post('/application/webTag/add', params);
}

// 标签分类-编辑
export async function postsiteTagEdit(params) {
  return http.post('/application/webTag/edit', params);
}

// 标签分类-删除
export async function postSiteTagDel(params) {
  return http.post('/application/webTag/delete', params);
}

// 标签分类-移动
export async function postSiteTagMove(params) {
  return http.post('/application/webTag/move', params);
}

// 标签分类-问题-列表
export async function getSiteTagQuestionList(params) {
  return http.get('/application/webTagQuestion/list', params);
}

// 标签分类-问题-添加
export async function postSiteTagQuestionAdd(params) {
  return http.post('/application/webTagQuestion/add', params);
}

// 标签分类-问题-编辑
export async function postSiteTagQuestionEdit(params) {
  return http.post('/application/webTagQuestion/edit', params);
}

// 标签分类-问题-删除
export async function postSiteTagQuestionDel(params) {
  return http.post('/application/webTagQuestion/delete', params);
}

// 标签分类-问题-移动
export async function postSiteTagQuestionMove(params) {
  return http.post('/application/webTagQuestion/move', params);
}

// 标签分类-问题-详情
export async function getSiteTagQuestionInfo(params) {
  return http.get('/application/webTagQuestion/info', params);
}

/* 基础设置 */
//获取用户类型
export async function userTypeList(params) {
  return http.post('/userTag/getUserTag', params);
}

/** 工单配置 */
// 工单配置列表
export async function getTicketList(params) {
  return http.get('/orderConfig/list', params);
}

// 查询用户流程模型
export async function postProcessDefinitionList(data) {
  return http.postKf('/flowableProcessDefinition/getProcessDefinitionList', data);
}

// 查询用户模板
export async function getWoTemplateListByVersionId(data) {
  return http.postFormDataKf('/woTemplateVersion/getWoTemplateListByVersionId', data);
}

// 新增工单配置
export async function postTicketAdd(data) {
  return http.post('/orderConfig/add', data)
}

// 修改工单配置
export async function postTicketEdit(data) {
  return http.post('/orderConfig/update', data)
}

// 删除工单配置
export async function postTicketDel(data) {
  return http.postFormData('/orderConfig/delete', data)
}

// 上移&下移工单配置
export async function postTicketUpOrDown(data) {
  return http.postFormData('/orderConfig/upOrDown', data)
}
